@echo off
chcp 65001 >nul

REM APS项目Kubb设置脚本
echo 🚀 开始设置APS项目Kubb API自动生成...

REM 检查Node.js是否安装
node --version >nul 2>&1
if %errorlevel% neq 0 (
    echo ❌ Node.js未安装，请先安装Node.js
    pause
    exit /b 1
)

REM 检查npm是否安装
npm --version >nul 2>&1
if %errorlevel% neq 0 (
    echo ❌ npm未安装，请先安装npm
    pause
    exit /b 1
)

echo ✅ Node.js和npm已安装

REM 安装依赖
echo 📦 安装kubb相关依赖...
npm install

if %errorlevel% neq 0 (
    echo ❌ 依赖安装失败
    pause
    exit /b 1
)

echo ✅ 依赖安装成功

REM 检查后端服务是否运行
echo 🔍 检查后端服务状态...
curl -s http://localhost:8080/v3/api-docs >nul 2>&1
if %errorlevel% neq 0 (
    echo ⚠️  后端服务未运行，请先启动后端服务：
    echo    cd ..\aps-demo ^&^& mvn spring-boot:run
    echo.
    echo    或者手动启动后端服务后重新运行此脚本
    pause
    exit /b 1
)

echo ✅ 后端服务正在运行

REM 生成API代码
echo 🔧 生成API代码...
npm run generate

if %errorlevel% neq 0 (
    echo ❌ API代码生成失败
    pause
    exit /b 1
)

echo ✅ API代码生成成功
echo.
echo 🎉 Kubb设置完成！
echo.
echo 📁 生成的API代码位于: src/api/generated/
echo 📖 使用指南: 查看 KUBB_SETUP_GUIDE.md
echo.
echo 💡 提示:
echo    - 后端API变更后，运行 'npm run generate' 重新生成
echo    - 生成的代码已包含TypeScript类型定义
echo    - 可以直接在Vue组件中导入使用

pause
